/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import dao.Dados_ProdutoDAO;
import dao.EnderecoDAO;
import dao.ProdutoDAO;
import entidades.Produto;
import excecoes.*;
import java.util.ArrayList;

/**
 *
 * @author SERVIDOR
 */
public class ProdutoControle {
    ProdutoDAO dao=new ProdutoDAO();
    Dados_ProdutoDAO ddao = new Dados_ProdutoDAO();
    
    public void cadastrarProduto(Produto produto) throws PJCException{
        try {
            this.buscarProdutoPorCodigo(produto.getCodigo());
            throw new PJCException();
        } catch (PNEException e) {
             dao.cadastrarProduto(produto);
             ddao.AddDadosProduto(produto.getDados());
        }
    }
    public Produto buscarProdutoPorCodigo(String codigo) throws PNEException{
        Produto produto = dao.getProdutoPorCodigo(codigo);
        if(produto == null){
            throw new PNEException();
        }else{
            return produto;
        }
    }
    public ArrayList<Produto> buscaProdutoPorNome(String nome) throws PNEException{
        ArrayList<Produto> produto = dao.getProdutoPorNome(nome);
        if(produto == null){
            throw new PNEException();
        }else{
            return produto;
        }
    }
    
    public void removerProduto(String codigo) throws PNEException{
        this.buscarProdutoPorCodigo(codigo);
        dao.removerProduto(codigo);
    }
    public void atualizarProduto(String codigo,Produto produto) throws PNEException{
        this.buscarProdutoPorCodigo(codigo);
        dao.atualizarProduto(codigo,produto);
    }
}
